Skip to content

ARM: dts: qcom: msm8226-motorola-titan: Enable WiFi and touchscreen - #21

Open
daviewales wants to merge 5 commits into
msm8226-mainline:qcom-msm8226-6.16.yfrom
daviewales:device-motorola-titan-6.16.y-wifi
Open

ARM: dts: qcom: msm8226-motorola-titan: Enable WiFi and touchscreen#21
daviewales wants to merge 5 commits into
msm8226-mainline:qcom-msm8226-6.16.yfrom
daviewales:device-motorola-titan-6.16.y-wifi

Conversation

@daviewales

@daviewales daviewales commented Jul 23, 2026

Copy link
Copy Markdown

WiFi

regulator-always-on for l3 and l8 prevents bootloops and instability.

Note: the following errors appear in dmesg, particularly when trying to use Bluetooth and WiFi at the same time. So far as I can tell, this is likely an issue with the driver, not the device tree.

wcn36xx: ERROR hal_enter_bmps response failed err=1
wcn36xx: ERROR Can not enter BMPS!
wcn36xx: ERROR SMD_EVENT (312) not supported

In particular, SMD_EVENT (312) is WCN36XX_HAL_P2P_NOA_ATTR_IND from wcn36xx/hal.h which is not explicitly handled by wcn36xx_smd_rsp_process() in wcn36xx/smd.c.

I have no idea how to fix that, and WiFi works great if I don't touch Bluetooth, so figured I should just send this.
(Bluetooth also works, but with a lot more dropouts. I haven't tried Bluetooth with WiFi disabled, but I was able to detect events from a paired PS4 DualShock controller before it dropped out.)

Thanks @erikas9987 for the hint about the regulators!

Touchscreen

Enable the Synaptics RMI4 I2C touchscreen for motorola-titan.

@daviewales
daviewales force-pushed the device-motorola-titan-6.16.y-wifi branch from 4993db4 to d6a38b3 Compare August 2, 2026 13:17
@daviewales daviewales changed the title ARM: dts: qcom: msm8226-motorola-titan: Add WiFi ARM: dts: qcom: msm8226-motorola-titan: Enable WiFi and touchscreen Aug 2, 2026
@daviewales

daviewales commented Aug 2, 2026

Copy link
Copy Markdown
Author

Update: Also enabled the touchscreen!

Edit: But now it doesn't seem able to stay powered off. (Yes, I'm using the right poweroff command this time!)

Edit 2: Interestingly, it powers off fine from a full boot. It only turns back on unexpectedly if I run poweroff from the debug shell... Maybe that's fine?

Edit 3: Ignore the previous two edits... I get the same behaviour without these commits.

@daviewales
daviewales force-pushed the device-motorola-titan-6.16.y-wifi branch from d6a38b3 to d51b2ed Compare August 5, 2026 11:29
Comment thread arch/arm/boot/dts/qcom/msm8226-motorola-titan.dts Outdated
Comment thread arch/arm/boot/dts/qcom/msm8226-motorola-titan.dts Outdated
Comment thread arch/arm/boot/dts/qcom/msm8226-motorola-titan.dts Outdated
/* WCNSS */
regulator-min-microvolt = <750000>;
regulator-max-microvolt = <1337500>;
regulator-always-on;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

regulator-always-on is not a proper solution, pm8226_l3 is already referenced from pronto, if l8 is also needed then the bindings are incomplete. If you have schematics please double-check there.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've narrowed this down to just l8 being required.

Looking at downstream, this is the vdd_pronto_pll-supply specified in msm8226.dtsi. Does that mean it belongs in the common upstream qcom-msm8226.dtsi file rather than just in the titan dts?

	qcom,pronto@fb21b000 {
		compatible = "qcom,pil-pronto";
		reg = <0xfb21b000 0x3000>,
		      <0xfc401700 0x4>,
		      <0xfd485300 0xc>;
		reg-names = "pmu_base", "clk_base", "halt_base";
		interrupts = <0 149 1>;
		vdd_pronto_pll-supply = <&pm8226_l8>;

(Also, it's not immediately clear to me what upstream property matches this.)

Comment thread arch/arm/boot/dts/qcom/msm8226-motorola-titan.dts Outdated
Comment thread arch/arm/boot/dts/qcom/msm8226-motorola-titan.dts Outdated
Comment thread arch/arm/boot/dts/qcom/msm8226-motorola-titan.dts Outdated
@daviewales

daviewales commented Aug 15, 2026

Copy link
Copy Markdown
Author

I've hopefully fixed most of the synaptics issues in 2b62f49. (Kept as a separate commit for review, but will squash it with the original when you're happy with the changes.)

Will work on the pronto changes in another commit.

Enable WiFi for motorola-titan, supported by existing driver for
WCN3620.

regulator-always-on for l3 and l8 prevents bootloops and instability.

Signed-off-by: David Wales <daviewales@disroot.org>
Enable the Synaptics RMI4 I2C touchscreen for motorola-titan.

Signed-off-by: David Wales <daviewales@disroot.org>
@daviewales
daviewales force-pushed the device-motorola-titan-6.16.y-wifi branch from 2b62f49 to 6041c1f Compare August 17, 2026 13:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants